Espressif Systems /ESP32-S3 /SPI0 /DDR

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

Interpret as DDR

31 2827 2423 2019 1615 1211 87 43 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (SPI_FMEM_DDR_EN)SPI_FMEM_DDR_EN 0 (SPI_FMEM_VAR_DUMMY)SPI_FMEM_VAR_DUMMY 0 (SPI_FMEM_DDR_RDAT_SWP)SPI_FMEM_DDR_RDAT_SWP 0 (SPI_FMEM_DDR_WDAT_SWP)SPI_FMEM_DDR_WDAT_SWP 0 (SPI_FMEM_DDR_CMD_DIS)SPI_FMEM_DDR_CMD_DIS 0SPI_FMEM_OUTMINBYTELEN 0 (SPI_FMEM_TX_DDR_MSK_EN)SPI_FMEM_TX_DDR_MSK_EN 0 (SPI_FMEM_RX_DDR_MSK_EN)SPI_FMEM_RX_DDR_MSK_EN 0SPI_FMEM_USR_DDR_DQS_THD 0 (SPI_FMEM_DDR_DQS_LOOP)SPI_FMEM_DDR_DQS_LOOP 0 (SPI_FMEM_DDR_DQS_LOOP_MODE)SPI_FMEM_DDR_DQS_LOOP_MODE 0 (SPI_FMEM_CLK_DIFF_EN)SPI_FMEM_CLK_DIFF_EN 0 (SPI_FMEM_HYPERBUS_MODE)SPI_FMEM_HYPERBUS_MODE 0 (SPI_FMEM_DQS_CA_IN)SPI_FMEM_DQS_CA_IN 0 (SPI_FMEM_HYPERBUS_DUMMY_2X)SPI_FMEM_HYPERBUS_DUMMY_2X 0 (SPI_FMEM_CLK_DIFF_INV)SPI_FMEM_CLK_DIFF_INV 0 (SPI_FMEM_OCTA_RAM_ADDR)SPI_FMEM_OCTA_RAM_ADDR 0 (SPI_FMEM_HYPERBUS_CA)SPI_FMEM_HYPERBUS_CA

Description

SPI0 flash DDR mode control register

Fields

SPI_FMEM_DDR_EN

1: in ddr mode, 0 in sdr mode

SPI_FMEM_VAR_DUMMY

Set the bit to enable variable dummy cycle in DDR mode.

SPI_FMEM_DDR_RDAT_SWP

Set the bit to reorder RX data of the word in DDR mode.

SPI_FMEM_DDR_WDAT_SWP

Set the bit to swap TX data of a word in DDR mode.

SPI_FMEM_DDR_CMD_DIS

the bit is used to disable dual edge in CMD phase when ddr mode.

SPI_FMEM_OUTMINBYTELEN

It is the minimum output data length in the panda device.

SPI_FMEM_TX_DDR_MSK_EN

Set this bit to mask the first or the last byte in MSPI ECC DDR write mode, when accesses to flash.

SPI_FMEM_RX_DDR_MSK_EN

Set this bit to mask the first or the last byte in MSPI ECC DDR read mode, when accesses to flash.

SPI_FMEM_USR_DDR_DQS_THD

The delay number of data strobe which from memory based on SPI_CLK.

SPI_FMEM_DDR_DQS_LOOP

1: Use internal signal as data strobe, the strobe can not be delayed by input timing module. 0: Use input SPI_DQS signal from PAD as data strobe, the strobe can be delayed by input timing module

SPI_FMEM_DDR_DQS_LOOP_MODE

When SPI_FMEM_DDR_DQS_LOOP and SPI_FMEM_DDR_EN are set, 1: Use internal SPI_CLK as data strobe. 0: Use internal ~SPI_CLK as data strobe. Otherwise this bit is not active.

SPI_FMEM_CLK_DIFF_EN

Set this bit to enable the differential SPI_CLK#.

SPI_FMEM_HYPERBUS_MODE

Set this bit to enable the SPI HyperBus mode.

SPI_FMEM_DQS_CA_IN

Set this bit to enable the input of SPI_DQS signal in SPI phases of CMD and ADDR.

SPI_FMEM_HYPERBUS_DUMMY_2X

Set this bit to enable the vary dummy function in SPI HyperBus mode, when SPI0 accesses to flash or SPI1 accesses flash or sram.

SPI_FMEM_CLK_DIFF_INV

Set this bit to invert SPI_DIFF when accesses to flash. .

SPI_FMEM_OCTA_RAM_ADDR

Set this bit to enable octa_ram address out when accesses to flash, which means ADDR_OUT[31:0] = {spi_usr_addr_value[25:4], 6’d0, spi_usr_addr_value[3:1], 1’b0}.

SPI_FMEM_HYPERBUS_CA

Set this bit to enable HyperRAM address out when accesses to flash, which means ADDR_OUT[31:0] = {spi_usr_addr_value[19:4], 13’d0, spi_usr_addr_value[3:1]}.

Links

() ()